From 66e818409f2c9c314ea547b0b477a98a7f9d2dc2 Mon Sep 17 00:00:00 2001 From: Jonathan Blandford Date: Tue, 24 Feb 2004 01:01:05 +0000 Subject: [PATCH] Add a get_size implementation so that we are no longer the same height as Mon Feb 23 19:57:45 2004 Jonathan Blandford * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): Add a get_size implementation so that we are no longer the same height as text. --- ChangeLog | 6 +++++ ChangeLog.pre-2-10 | 6 +++++ ChangeLog.pre-2-4 | 6 +++++ ChangeLog.pre-2-6 | 6 +++++ ChangeLog.pre-2-8 | 6 +++++ gtk/gtkcellrendererseptext.c | 46 ++++++++++++++++++++++++++++++++++++ 6 files changed, 76 insertions(+) diff --git a/ChangeLog b/ChangeLog index 1ed5bf681e..d46719066a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Feb 23 19:57:45 2004 Jonathan Blandford + + * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): + Add a get_size implementation so that we are no longer the same + height as text. + 2004-02-24 Anders Carlsson * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path), diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 1ed5bf681e..d46719066a 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +Mon Feb 23 19:57:45 2004 Jonathan Blandford + + * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): + Add a get_size implementation so that we are no longer the same + height as text. + 2004-02-24 Anders Carlsson * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path), diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 1ed5bf681e..d46719066a 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,9 @@ +Mon Feb 23 19:57:45 2004 Jonathan Blandford + + * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): + Add a get_size implementation so that we are no longer the same + height as text. + 2004-02-24 Anders Carlsson * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path), diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 1ed5bf681e..d46719066a 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +Mon Feb 23 19:57:45 2004 Jonathan Blandford + + * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): + Add a get_size implementation so that we are no longer the same + height as text. + 2004-02-24 Anders Carlsson * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path), diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 1ed5bf681e..d46719066a 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +Mon Feb 23 19:57:45 2004 Jonathan Blandford + + * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size): + Add a get_size implementation so that we are no longer the same + height as text. + 2004-02-24 Anders Carlsson * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path), diff --git a/gtk/gtkcellrendererseptext.c b/gtk/gtkcellrendererseptext.c index d9ec1a8486..feab08516b 100644 --- a/gtk/gtkcellrendererseptext.c +++ b/gtk/gtkcellrendererseptext.c @@ -22,6 +22,14 @@ #include "gtkcellrendererseptext.h" +static void gtk_cell_renderer_sep_get_size (GtkCellRenderer *cell, + GtkWidget *widget, + GdkRectangle *cell_area, + gint *x_offset, + gint *y_offset, + gint *width, + gint *height); + static void gtk_cell_renderer_sep_text_render (GtkCellRenderer *cell, GdkWindow *window, GtkWidget *widget, @@ -41,6 +49,7 @@ gtk_cell_renderer_sep_text_class_init (GtkCellRendererSepTextClass *class) parent_class = g_type_class_peek_parent (class); + cell_renderer_class->get_size = gtk_cell_renderer_sep_get_size; cell_renderer_class->render = gtk_cell_renderer_sep_text_render; } @@ -72,6 +81,43 @@ _gtk_cell_renderer_sep_text_get_type (void) return cell_type; } +static void +gtk_cell_renderer_sep_get_size (GtkCellRenderer *cell, + GtkWidget *widget, + GdkRectangle *cell_area, + gint *x_offset, + gint *y_offset, + gint *width, + gint *height) +{ + GtkCellRendererSepText *st; + const char *text; + + st = GTK_CELL_RENDERER_SEP_TEXT (cell); + + text = st->renderer_text.text; + + if (!text) + { + if (width) + *width = cell->xpad * 2 + 1; + + if (height) + *height = cell->ypad * 2 + 1; + + if (x_offset) *x_offset = 0; + if (y_offset) *y_offset = 0; + if (cell_area) + { + + } + } + else + { + GTK_CELL_RENDERER_CLASS (parent_class)->get_size (cell, widget, cell_area, x_offset, y_offset, width, height); + } +} + static void gtk_cell_renderer_sep_text_render (GtkCellRenderer *cell, GdkWindow *window, -- 2.30.2